package io.polly.ldz.reactor.security;

import io.polly.ldz.reactor.context.SystemCode;
import io.polly.ldz.reactor.context.WebConstant;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint;
import org.springframework.stereotype.Component;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


/**
 * @version 3.5.0
 * @description: 未登录
 * Copyright (C), 2020-2021,
 * @date 2021/12/25 9:45
 */
@Component
public final class LoginAuthenticationEntryPoint extends LoginUrlAuthenticationEntryPoint {

    /**
     * Instantiates a new Login authentication entry point.
     */
    public LoginAuthenticationEntryPoint() {
        super(WebConstant.LOGIN_URL);
    }

    @Override
    public void commence(HttpServletRequest request, HttpServletResponse response,
                         AuthenticationException authException)  {
        RestUtil.response(response, SystemCode.UNAUTHORIZED);
    }

}
